

/* 生成指定范围随机数 */
export const randomNum = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min;

/* 输入：[1, 2, 3], 输出：[1, 3, 6] */
export const accumulate = (...numList) => 
    numList.reduce((acc,n) => [...acc, n + (acc.slice(-1)[0] || 0)], []);

/* 在指定日期上增加天数 */
export const addDaysToDate = (date, n) => {
    const d = new Date(date);
    d.setDate(d.getDate() + n);
    return d.toISOString().split('T')[0];
}

/* 在指定日期时间上增加分钟数 */
export const addMinutesToDate = (date, n) => {
    const d = new Date(date);
    d.setTime(d.getTime() + n * 60000);
    d.setHours(d.getHours() + 8)
    return d.toISOString().split('.')[0].replace('T', ' ');
}

/* 给元素添加样式 */
export const addStyles = (el, styles) => Object.assign(el.style, styles);

/* 判断数组里所有元素是否都是唯一 */
export const allUnique = arr => arr.length === new Set(arr).size;